Matrix sensor network and method for selecting a group of rows and reading columns of the matrix sensor network

ABSTRACT

An apparatus comprising: a sensor network comprising: a first plurality of rows, a second plurality of columns and a third plurality of sensor elements wherein each sensor element is associated with a unique combination of a row and a column but not every unique combination of row and column is associated with a sensor; selection circuitry configured to concurrently select a group of the first plurality of rows; reading circuitry configured to concurrently read columns during a concurrent selection; and control circuitry configured to determine the group of the first plurality of rows that are concurrently selected.

RELATED APPLICATION

This application was originally filed as PCT Application No.PCT/EP2009/066079 filed Nov. 30, 2009.

FIELD OF THE INVENTION

Embodiments of the present invention relate to a sensor and a method ofusing a sensor. In particular, embodiments of the present invention mayrelate to a sensor network and a method of using a sensor network.

BACKGROUND TO THE INVENTION

A matrix sensor network comprises sensor elements arranged on a grid ormatrix. The grid or matrix comprises a plurality of row lines (rows) anda plurality of column lines (columns). Each sensor element is associatedwith a unique combination of a row and a column.

Typically a single row is selected and all the columns are read todetect a sensing event at any sensor associated with the selected rowand any one of the columns. The matrix sensor network is scanned bysequentially selecting each row separately.

BRIEF DESCRIPTION OF VARIOUS EMBODIMENTS OF THE INVENTION

According to various, but not necessarily all, embodiments of theinvention there is providedan apparatus comprising: a sensor networkcomprising: a first plurality of rows, a second plurality of columns anda third plurality of sensor elements wherein each sensor element isassociated with a unique combination of a row and a column but not everyunique combination of row and column is associated with a sensor;selection circuitry configured to concurrently select a group of thefirst plurality of rows; reading circuitry configured to concurrentlyread columns during a concurrent selection; and control circuitryconfigured to determine the group of the first plurality of rows thatare concurrently selected.

According to various, but not necessarily all, embodiments of theinvention there is provided a method comprising: concurrently selectinga group of rows in a matrix sensor; and simultaneously reading columnsof the sensor network to detect a sensing event, wherein theconcurrently selected group of rows are associated through sensingelements of the sensor network with different columns.

According to various, but not necessarily all, embodiments of theinvention there is provided an apparatus comprising: a sensor networkcomprising: a first plurality of rows, a second plurality of columns anda third plurality of sensor elements wherein each sensor element isassociated with a unique combination of a row and a column but not everyunique combination of row and column is associated with a sensor;selection circuitry configured to concurrently select groups of thefirst plurality of rows according to predetermined patterns; and readingcircuitry configured to concurrently read columns during a concurrentselection.

BRIEF DESCRIPTION OF THE DRAWINGS

For a better understanding of various examples of embodiments of thepresent invention reference will now be made by way of example only tothe accompanying drawings in which:

FIG. 1 schematically illustrates an apparatus;

FIG. 2 schematically illustrates a record carrier;

FIG. 3 schematically illustrates a matrix sensor network;

FIGS. 4A to 4C schematically illustrate different configurations ofsensor elements in a matrix sensor network; and

FIG. 5 schematically illustrates a method.

DETAILED DESCRIPTION OF VARIOUS EMBODIMENTS OF THE INVENTION

Some embodiments described below relate to an apparatus comprising: asensor network 10 comprising: a first plurality of rows 22, a secondplurality of columns 21 and a third plurality of sensor elements SWwherein each sensor element SW is associated with a unique combinationof a row and a column but not every unique combination of row and columnis associated with a sensor element; selection circuitry 24 configuredto concurrently select a group of the first plurality of rows; readingcircuitry 26 configured to concurrently read columns during a concurrentselection; and control circuitry configured to determine the group ofthe first plurality of rows that are concurrently selected.

The control circuitry may be configured to determine groups of rows suchthat the rows 22 are associated through sensing elements SW of thesensor network 10 with different columns 21.

The sensor network 10 therefore has a reduced number of sensor elementsdistributed over the sensor network 10 which results in faster detectionof a sensing event.

FIG. 1 schematically illustrates an apparatus 1 comprising one or moresensor networks 10. A sensor network 10 may optionally be a part of atouch screen 2 or may optionally be part of a keypad 6. In theillustrated example, a first matrix sensor network 10 is a part of thetouch screen 2 and a second matrix sensor network 10 is part of thekeypad 6.

In the FIG. 1, a touch screen module 5 comprises: a touch screen 2 thatincludes a matrix sensor network 10 and a touch screen controller 4 forcontrolling the touch screen 2 as an input device. It may also comprisea display driver 3 for controlling a display panel 9 as an outputdevice. The touch screen 2 may be a display integrated touch screen. Thetouch screen controller 4 may be implemented entirely in hardware oralternatively implemented using a combination of hardware and software.

In the FIG. 1, a keypad module 7 comprises: a keypad 6 that includes amatrix sensor network 10; and a keypad controller 8 for controlling thekeypad 6 as an input device. The keypad controller 8 may be implementedentirely in hardware or alternatively implemented using a combination ofhardware and software.

A processor 12 is connected to the touch screen module 5, the keypadmodule 7, a memory 13 and functional circuitry 15. The memory 13 storesa computer program 14. The processor 12 is configured to read from andwrite to the memory 13.

The functional circuitry 15 represents circuitry that performs functionsthat are ancillary to the control of the matrix sensor network 10 butwhich provide functionality to the apparatus 1.

Control circuitry for the intelligent control of a matrix sensor network10 in the touch screen 2 may be provided within the touch screencontroller 4 and/or the processor 12 under the control of the computerprogram 14.

Control circuitry for the intelligent control of a matrix sensor network10 in the keypad 6 may be provided by the keypad controller 8 and/or theprocessor 12 under the control of the computer program 14.

Any such control circuitry provided by the processor 12 under thecontrol of the computer program 14 may, instead, be integrated into anoptional control module 16. The control module 16 may be implementedentirely in hardware or alternatively implemented using a combination ofhardware and software. The term ‘apparatus’ may refer to the apparatus 1or any sub-component of the apparatus 1.

The memory 13 stores a computer program 14 comprising computer programinstructions that control the operation of the apparatus 1 when loadedinto the processor 12. The computer program instructions 14 provide thelogic and routines that enables the apparatus to perform the methodsdescribed below and/or illustrated in the Figures. The processor 12 byreading the memory 13 is able to load and execute the computer program14.

The computer program 14 may arrive at the apparatus 1 via any suitabledelivery mechanism 17 such as illustrated in FIG. 2. The deliverymechanism 17 may be, for example, a computer-readable storage medium, acomputer program product, a memory device, a record medium, an articleof manufacture that tangibly embodies the computer program 14. Thedelivery mechanism may be a signal configured to reliably transfer thecomputer program 14. The apparatus 1 may propagate or transmit thecomputer program 14 as a computer data signal.

Although the memory 13 is illustrated as a single component it may beimplemented as one or more separate components some or all of which maybe integrated/removable and/or may providepermanent/semi-permanent/dynamic/cached storage.

References to ‘computer-readable storage medium’, ‘computer programproduct’, ‘tangibly embodied computer program’ etc. or a ‘controller’,‘computer’, ‘processor’ etc. should be understood to encompass not onlycomputers having different architectures such as single/multi-processorarchitectures and sequential (Von Neumann)/parallel architectures butalso specialized circuits such as field-programmable gate arrays (FPGA),application specific circuits (ASIC), signal processing devices andother devices. References to computer program, instructions, code etc.should be understood to encompass software for a programmable processoror firmware such as, for example, the programmable content of a hardwaredevice whether instructions for a processor, or configuration settingsfor a fixed-function device, gate array or programmable logic deviceetc.

FIG. 3 schematically illustrates a matrix sensor network 10. Thisexample of a sensor network 10 comprises sensor elements SW arranged ona grid or matrix 20. The grid or matrix 20 comprises a first pluralityof row lines (rows) 22 and a second plurality of column lines (columns)21. Each sensor element SW is associated with a unique combination of arow 22 and a column 21 but each unique combination of a row 22 and acolumn 21 does not have an associated sensor element SW. In thisexample, the rows 22 are orthogonal to the columns 21.

A timing controller block 24 operates as selection circuitry and isconfigured to concurrently select a group of the first plurality ofrows. The group may contain multiple rows.

Control circuitry (not separately illustrated in FIG. 3) is configuredto determine the groups of rows such that the rows 22 are associatedthrough sensing elements SW of the matrix sensor network 10 withdifferent columns 21. The control circuitry may be part of the timingcontroller block 24 or separate to it.

A reading block 26 operates as reading circuitry to detect a sensingevent. The reading circuitry is configured to concurrently read thesecond plurality of columns 21 during a simultaneous concurrentselection.

If a sensing event is occurring at a sensor element SW and the row 22associated with that sensing element SW is selected, then the column 21associated with that sensing element SW will indicate a sensing eventthat is detected by the reading block 26. A co-ordinate of a sensingevent is identified by the row and column of the sensing event.

In order to avoid ambiguous output, sensing elements SW associated withrows that are concurrently selected as a group are not associated withthe same columns. Sensing elements SW associated with the same columnare not be concurrently selected. If, however, sensing elements SWassociated with the same column are concurrently selected then furthersteps would be required to disambiguate which of the sensing elements SWassociated with a column has actually recorded a sensing event.

There is typically a minimum signal time required for an accurate read.Consequently, the timing controller 24 concurrently selects a differentgroup of the first plurality of rows in a series of separate time slotswhich have a certain minimum duration.

In this application the term ‘row’ is used to signify a line that isselected to obtain a read-out from a sensor element. The term ‘column’is used to signify a line that is used to obtain a read-out from asensor element. It is does not necessarily imply any orientation to thehorizontal or vertical.

FIG. 5 schematically illustrates a method 40.

At block 42, a group of rows in the matrix sensor network areconcurrently selected.

Typically, the rows in the group are associated through sensing elementsSW of the matrix sensor network 10 with different columns 21. Sensingelements SW associated with the same column are not found in a group ofrows for concurrent selection.

At block 44, the columns of the matrix sensor network are simultaneouslyread to detect a sensing event.

FIGS. 4A, 4B and 4C schematically illustrate different configurations ofsensor elements. Each figure comprises a plurality of rows 22 and aplurality of columns 21. The overlapping rows and columns forms a matrixor grid 50. The presence of a sensor element at the intersection of aparticular row and column is indicated by a large solid black dot. Theabsence of a large solid black dot at the intersection of a row andcolumn indicates that a sensor element is not associated with thatcombination of row and column.

In the illustrated examples, there are 16 rows and 16 columns with 256intersections. This is of course an example only and there may bedifferent numbers of rows and/or columns in other embodiments.

In the illustrated example, the sensor elements are distributed suchthat, for each column, the sensors have a periodicity of N rows. That isthe rows with sensors are separated by N−1 rows without sensors. N alsorepresents the number of rows in a group of concurrently selected rows.In FIG. 4A, N=2. In FIGS. 4B and 4C, N=4.

The sensor elements are distributed substantially evenly over the gridor matrix 50 formed by the rows and columns.

Each row 22 is referenced with a unique index i which increases by onefor each successive row. In the Figures, i ranges from 1 to 16.

Each column is referenced with a unique index j which increases by onefor each successive column. In the Figures, j ranges from 1 to 16.

A sensor element is positioned at a row indexed by [N*m+offset(j)]modulo M where M is the number of rows, N is the periodicity of thesensors within the columns and where m=0, 1, 2, 3 . . . . (M/N)−1. Foreach group of N adjacent rows, the offsets(j) have N different valuesfor [offset(j)] modulo N.

In FIG. 4A, M=16, N=2 and offset(j)=j.

-   For column 1 (j=1), there are sensors at rows: 1, 3, 5, 7, 9, 11,    13, 15 (for m=0, 1, 2, 3, 4, 5, 6, 7)-   For column 2 (j=2), there are sensors at rows: 2, 4, 6, 8, 10, 12,    14, 16 (for m=0, 1, 2, 3, 4, 5, 6, 7)-   For column 3 (j=3), there are sensors at rows: 3, 5, 7, 9, 11, 13,    15, 1 (for m=0, 1, 2, 3, 4, 5, 6, 7) etc

For each group of 2 adjacent rows, the offsets(j) have 2 differentvalues for [offset(j)] modulo N. In this case [j] modulo 2 is either 1or 0.

The sensor elements are distributed such that, for each row the columnswith sensors are separated by a regular number of columns withoutsensors.

The rows are concurrently selected in groups of two. A series ofconcurrent selections is used to select all the rows. The series may berepresented as a list of couplets, where each couplet is associated witha concurrent selection of a particular time slot. Each couplet has theindexes i of the pairs of rows that are concurrently selected in thatcouplet's time slot.

One series of concurrent selections may be:

-   (1,2), (3, 4), (5, 6), (7, 8), (9, 10), (11, 12), (13, 14), (15, 16)

A second series of concurrent selection may be:

-   (1, 16), (3, 14), (5, 12), (7, 10), (9, 8), (11, 6), (13, 4), (15,    2)

When this second series of concurrent selections is used, differentpairs of rows are concurrently selected in series. The series for onerow in the pair is defined by a first series of rows (first index in acouplet) that starts with the first row (row 1) and ends with the lastbut one row (row 15). The series for the other row in the pair isdefined by a second series of rows (second index in a couplet) thatstarts with the last row (row 16) and ends with the second row (row 2).

When this second series of concurrent selections is used, theconcurrently selected rows have separations between them that vary witheach successive concurrent selection in a series of concurrentselections. The separation may be found by subtracting the first indexof a couplet from the second index of the same couplet.

In FIG. 4B, M=16, N=4, offset is periodically repeats 1, 2, 3, 4, 3, 2,

For column 1 (j=1), offset=1, there are sensors at rows: 1, 5, 9, 13,(for m=0, 1, 2, 3)

For column 2 (j=2), offset=2, there are sensors at rows: 2, 6, 10, 14(for m=0, 1, 2, 3)

For column 3 (j=3), offset=3, there are sensors at rows: 3, 7, 11, 15(for m=0, 1, 2, 3)

For column 4 (j=4), offset=4, there are sensors at rows: 4, 8, 12, 16(for m=0, 1, 2, 3)

For column 5 (j=5), offset=3, there are sensors at rows: 3, 7, 11, 15(for m=0, 1, 2, 3)

For column 6 (j=5), offset=2, there are sensors at rows: 2, 6, 10, 14(for m=0, 1, 2, 3) etc

For each group of 4 adjacent rows, the offsets(j) have 4 differentvalues for [offset(j)] modulo N.

The sensor elements are distributed such that, for each row the columnswith sensors are separated by a regularly variable number of columnswithout sensors. The separation for rows 1, 5 . . . is regular at 5. Theseparation for rows 2, 6 . . . is 3, then 1, then 3, then 1 . . . Theseparation for rows 3, 7 . . . is 1, then 3, then 1, then 3 . . . Theseparation for rows 4, 8, . . . is regular at 5.

The rows are concurrently selected in groups of four. A series ofconcurrent selections is used to select all the rows. The series may berepresented as a list of quartets, where each quartet is associated witha concurrent selection of a particular time slot. Each quartet has theindexes i of one of the 4 rows that are concurrently selected in thatquartet's time slot.

One series of concurrent selections may be:

-   (1, 2, 3, 4), (5, 6, 7, 8), (9, 10, 11, 12), (13, 14, 15, 16)

Another series of concurrent selections may be:

-   (1, 6, 11, 16), (5, 10, 7, 12), (9, 14, 3, 8), (13, 2, 15, 4)

A further series of concurrent selections may be:

-   (1, 2, 15, 16), (5, 6, 11, 12), (9, 10, 7, 8), (13, 14, 3, 4)

When the second and third series of concurrent selections is used, theconcurrently selected rows have separations between them that vary witheach successive concurrent selection in a series of concurrentselections. The separation may be found by subtracting pairs of indexesof a quartet.

In FIG. 4C, M=16, N=4, offset(j)=j

For column 1 (j=1), offset=1, there are sensors at rows: 1, 5, 9, 13,(for m=0, 1, 2, 3)

For column 2 (j=2), offset=2, there are sensors at rows: 2, 6, 10, 14(for m=0, 1, 2, 3)

For column 3 (j=3), offset=3, there are sensors at rows: 3, 7, 11, 15(for m=0, 1, 2, 3)

For column 4 (j=4), offset=4, there are sensors at rows: 4, 8, 12, 16(for m=0, 1, 2, 3)

For column 5 (j=5), offset=5, there are sensors at rows: 5, 9, 13, 1(for m=0, 1, 2, 3)

For column 6 (j=6), offset=6, there are sensors at rows: 6, 10, 14, 2(for m=0, 1, 2, 3)

etc

For each group of 4 adjacent rows, the offsets(j) have 4 differentvalues for [offset(j)] modulo N.

The sensor elements are distributed such that, for each row the columnswith sensors are separated by three columns without sensors.

The rows are concurrently selected in groups of four. A series ofconcurrent selections is used to select all the rows. The series may berepresented as a list of quartets, where each quartet is associated witha concurrent selection of a particular time slot. Each quartet has theindexes i of one of the 4 rows that are concurrently selected in thatquartet's time slot.

One series of concurrent selections may be:

-   (1, 2, 3, 4), (5, 6, 7, 8), (9, 10, 11, 12), (13, 14, 15, 16)

Another series of concurrent selections may be:

-   (1, 6, 11, 16), (5, 10, 7, 12), (9, 14, 3, 8), (13, 2, 15, 4)

A further series of concurrent selections may be:

-   (1, 2, 15, 16), (5, 6, 11, 12), (9, 10, 7, 8), (13, 14, 3, 4)

When the second and third series of concurrent selections is used, theconcurrently selected rows have separations between them that vary witheach successive concurrent selection in a series of concurrentselections. The separation may be found by subtracting pairs of indexesof a quartet.

Referring to FIGS. 4A to 4C, it is noted that each sensor element isoffset one row and one column from at least one other sensor element.Two corner sensor elements are offset from only one sensor element byone row and one column. Edge sensor elements are offset from each ofonly two sensor elements by one row and one column. The other sensorelements are offset from each of at least two sensor elements by one rowand one column. For each sensor element, the next closest sensor elementis one row and one column distant.

Referring back to FIGS. 4A to 4C, if the matrix sensor network 10 ispart of an integrated touch screen, then there may also be additionalrows and columns for the pixels of the display. The density of pixelsmay be N times greater than the density of sensing elements. There may,for example, be a pixel element for each intersection of the rows 22 andcolumns 21 of the matrix sensor network 10. A pixel element may be aRed, Green, Blue pixel element or similar. The touch screen may use anysuitable technology for a sensing element. It may, for example, beresistive, optical or capacitive.

As used here ‘module’ refers to a unit or apparatus that excludescertain parts/components that would be added by an end manufacturer or auser.

The blocks illustrated in the Figs may represent steps in a methodand/or sections of code in the computer program. The illustration of aparticular order to the blocks does not necessarily imply that there isa required or preferred order for the blocks and the order andarrangement of the block may be varied. Furthermore, it may be possiblefor some steps to be omitted.

Although embodiments of the present invention have been described in thepreceding paragraphs with reference to various examples, it should beappreciated that modifications to the examples given can be made withoutdeparting from the scope of the invention as claimed.

Features described in the preceding description may be used incombinations other than the combinations explicitly described.

Although functions have been described with reference to certainfeatures, those functions may be performable by other features whetherdescribed or not.

Although features have been described with reference to certainembodiments, those features may also be present in other embodimentswhether described or not.

Whilst endeavoring in the foregoing specification to draw attention tothose features of the invention believed to be of particular importanceit should be understood that the Applicant claims protection in respectof any patentable feature or combination of features hereinbeforereferred to and/or shown in the drawings whether or not particularemphasis has been placed thereon.

I claim:
 1. An apparatus comprising: a sensor network comprising: aplurality of rows, a plurality of columns and a plurality of sensorelements, wherein each sensor element is associated with a uniquecombination of a row and a column but not every unique combination ofrow and column is associated with a sensor; at least one processor;memory storing a program of instructions; wherein the memory storing theprogram of instructions is configured to cause the apparatus to atleast: from an available array of elements of the sensor network,wherein the available array includes at least one column in which two ormore sensors are disposed in different rows, specify two or more rows tobe concurrently selected, wherein the specification of two or more rowscomprises specifying the rows of sensors such that no column in thesensor network includes two or more sensors belonging to the specifiedrows of sensors; concurrently select the specified rows; and read thecolumns during a comment selection of rows so as to detect sensingevents at sensors disposed in the selected rows.
 2. The apparatus ofclaim 1, wherein the sensor elements are distributed such that, for eachcolumn the rows with sensors are separated by a regular number of rowswithout sensors.
 3. The apparatus of claim 2, wherein the regular numberis one.
 4. The apparatus of claim 2, wherein the regular numberdetermines the number of concurrently selected rows.
 5. The apparatus ofclaim 1, wherein the sensor elements are distributed substantiallyevenly over a matrix formed by the rows and columns.
 6. The apparatus ofclaim 1, wherein each sensor element is offset one row and one columnfrom at least one other sensor element.
 7. The apparatus of claim 1,wherein two corner sensor elements are offset from only one sensorelement by one row and one column, wherein edge sensor elements areoffset from each of only two sensor elements by one row and one columnand wherein the other sensor elements are offset from each of at leasttwo sensor elements by one row and one column.
 8. The apparatus of claim1, wherein each row is referenced with a unique index i which increasesby one for each successive row, wherein each column is referenced with aunique index j which increases by one for each successive column andwherein a sensor element is positioned at a row indexed by [N*m+offset(j) ] modulo M where M is the number of rows, N is theperiodicity of the sensors within the columns and where m=0, 1, 2,
 3. 9.The apparatus of claim 8, wherein for every N adjacent rows, theoffsets(j) have N different values for offset(j) modulo N.
 10. Theapparatus of claim 8, wherein offset (j) is j.
 11. The apparatus ofclaim 1, wherein the sensor elements are distributed such that, for eachrow the columns with sensors are separated by a regular number ofcolumns without sensors.
 12. The apparatus of claim 1, wherein thesensor elements are distributed such that, for each row the columns withsensors are separated by a regularly variable number of columns withoutsensors.
 13. The apparatus of claim 1, wherein the concurrently selectedrows have separations between them that vary with each successiveconcurrent selection in a series of concurrent selections.
 14. Theapparatus of claim 1, wherein different pairs of rows are concurrentlyselected in series, and wherein the series for one row in the pair isdefined by a first series of rows that starts with the first row andends with the last but one row and the series for the other row in thepair is defined by a second series of rows that starts with the last rowand ends with the second row.
 15. A method comprising: a) concurrentlyselecting two or more rows in a matrix sensor comprising sensorsdisposed at intersections of a plurality of rows and a plurality ofcolumns of the matrix sensor, from an available array of elements of thematrix sensor, wherein the available array includes at least one columnin which at least two or more sensors are disposed in different rows,wherein specification of the two or more rows comprises specifying therows of sensors such that no column in the matrix sensor includes two ormore sensors specified rows of sensors; and b) simultaneously readingcolumns of the matrix sensor during a concurrent selection of rows so asto detect sensing events at two or more sensors disposed in the selectedrows.
 16. The method of claim 15, wherein sensing elements associatedwith the same column are not concurrently selected.
 17. The method ofclaim 15, wherein each sensor element is associated with a uniquecombination of a row and a column of the sensor network but not everyunique combination of row and column is associated with a sensor. 18.The method of claim 15, wherein the concurrently selected rows haveseparations between them that vary with each successive concurrentselection in a series of concurrent selections.
 19. An apparatuscomprising: a sensor network comprising: a plurality of rows, aplurality of columns and a plurality of sensor elements wherein eachsensor element is associated with a unique combination of a row and acolumn but not every unique combination of row and column is associatedwith a sensor; selection circuitry configured to specify for concurrentselection, from an available array of elements of the sensor network,including at least one column in which two or more sensors are disposedin different rows, two or more rows according to predetermined patterns,wherein specification of two or more rows comprises specifying the rowsof sensors such that no column in the sensor network includes two ormore sensors specified rows of sensors; concurrently select thespecified rows; and reading circuitry configured to concurrently readcolumns during a concurrent selection of rows so as to detect sensingevents at sensors disposed in the selected rows.